#ifndef CUSTODY_REQUEST_MESSAGE_H_
#define CUSTODY_REQUEST_MESSAGE_H_

#include "ariba/ariba.h"
#include "../../FileInfo.h"

using_serialization;


class CustodyRequestMessage  : public ariba::Message
{
	VSERIALIZEABLE;
public:
	/// Default constructor, required for automatic de-serialization
	CustodyRequestMessage();

	/// Convenient constructor for setting up a new chat message object
	CustodyRequestMessage(FilePtr file, string receiver);


	string get_key();
	string get_file_name();
	uint64_t get_size();
	string get_receiver();


private:
	string key;
	string file_name;
	uint64_t size;
	string receiver;
};

sznBeginDefault(CustodyRequestMessage, X)
{
    X && T(key) && T(file_name) && size && T(receiver);
} sznEnd();

#endif /* CUSTODY_REQUEST_MESSAGE_H_ */
